package cn.xinfei.xdecision.common.service.configcenter;


import cn.xinfei.xdecision.common.model.configcenter.rejectcode.model.RejectBranchCodeModel;
import cn.xinfei.xdecision.common.model.configcenter.rejectcode.vo.*;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;

public interface RejectBranchCodeService extends IService<RejectBranchCodeModel> {

    Void createCategory(RejectCategoryCreateAndUpdateReq rejectCategoryCreateAndUpdateReq);


    RejectCategoryListResp getCategoryList(Long parentId);


    void createCode(RejectCodeCreateAndUpdateReq rejectCategoryCreateAndUpdateReq);


    RejectCodeListResp getBranchCodeList(Long categoryId);


    Void createBranchCode(Long userId, RejectBranchCodeCreateAndUpdateReq rejectBranchCodeCreateAndUpdateReq);

    RejectBranchCodeResp getBranchCode(Long id);


    Void updateBranchCode(Long userId, Long id, RejectBranchCodeCreateAndUpdateReq rejectBranchCodeCreateAndUpdateReq);

    void removeBranchCode(Long id);


    PageInfo<RejectBranchCodeResp> searchBranchCode(RejectBranchCodeSearchReq rejectBranchCodeSearchReq);


    void createDiversionLabel(RejectDiversionLabelCreateAndUpdateReq rejectBranchCodeCreateAndUpdateReq);


    void updateDiversionLabel(Long id, RejectDiversionLabelCreateAndUpdateReq rejectDiversionLabelCreateAndUpdateReq);


    PageInfo<RejectDiversionLabelResp> getDiversionLabel(Integer pageNo, Integer pageSize);

    RejectDiversionLabelListResp getRejectDiversionLabelAll();

}
